package com.njupt.yanglonglong.report.demo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.njupt.yanglonglong.report.demo.dto.StudentGradeDto;
import com.njupt.yanglonglong.report.demo.dto.StudentsGradeDto;
import com.njupt.yanglonglong.report.demo.entity.Report;
import com.njupt.yanglonglong.report.demo.entity.ScoreVO;
import com.njupt.yanglonglong.report.demo.vo.ReportVO;

import java.util.List;

/**
 *
 */
public interface ReportService extends IService<Report> {
    /**
     * 教师获取已提交的报告
     *
     * @param experimentId
     * @return
     */
    List<ReportVO> getReportListByExperId(String experimentId);

    List<ReportVO> getCommittedReportListByExperId(String experimentId);

    Report getReportByStudentIdExperimentId(String studentId, String experimentId);

    List<StudentsGradeDto> queryGradeByTeacherCourseId(String teacherId, String courseId);

    List<StudentGradeDto> queryStudentGradeByStuIdAndCourseId(String studentId, String courseId);

    Boolean stuInsertReportFile(Report report);

    Boolean stuUpdateReportFile(Report report);

    Boolean markReport(Report report);

    Report getMarkedInfo(Report report);

    List<Report> getReportByStudentIdCourseId(String stuId, String courseId);

    List<ScoreVO> getReportScoreByStuIdAndCourseId(String stuId, String courseId);
}
